Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable Source Link and Deterministic Builds #67

Closed
wants to merge 73 commits into from

Conversation

henrygab
Copy link

@henrygab henrygab commented May 21, 2021

Fixes #67.

Supercedes PR #65.
Also partial fix for #54 (Enables automated GitHub Actions-based publishing).

I have validated using JustAssembly that the resulting assemblies are equivalent. All built-in tests continue to pass. Just the user experience is improved.

Three things are provided with this PR:

  1. Enabling of Source Link
  2. Enabling of deterministic builds when built via GitHub Actions
  3. Improvements to CLS-compliance (a few protected members were causing errors)

Source Link enables anyone building NuGet libraries to provide source-level debugging for their users with almost no effort. See also documentation.

Used NuGet Package Explorer to verify the package has Source Link enabled and is deterministic

Used JustAssembly with commit 0ce7ce4 to verify assemblies are identical to those published as minecraft-dotnet.Substrate v2.0.44-alpha.

redwyre and others added 30 commits March 1, 2015 20:35
…nt versions for testing, fixed some issues with new level changes
…ded schemabuilder and tagnodeattribute for generating schemas using reflection
redwyre and others added 22 commits November 27, 2017 02:17
Conflicts:
	Substrate.Tests/LevelTests.cs
	Substrate.Tests/Substrate.Tests.csproj
	Substrate.Tests/WorldTests.cs
	Substrate/Source/Nbt/TagNodeShort.cs
	Substrate/Substrate.csproj
	SubstrateCS/Substrate (NET2).csproj
	SubstrateCS/Substrate.sln
Conflicts:
	Substrate.Tests/BlockTests.cs
	Substrate.Tests/LevelTests.cs
	Substrate.Tests/Properties/AssemblyInfo.cs
	Substrate.Tests/Substrate.Tests.csproj
	Substrate.Tests/WorldTests.cs
	Substrate.sln
	Substrate/Source/BlockInfo.cs
	Substrate/Source/Nbt/JSONSerializer.cs
	Substrate/Source/Nbt/NbtVerifier.cs
	Substrate/Source/Nbt/TagNodeShort.cs
	Substrate/Source/Player.cs
Added loading, more removal of backing stores, added event to verifier for unexpected tags
…ctionary as inventory (will probably change)
Implemented better schema builder list loading
Made options tests fail inconclusive
    Improve CLS compliance
    Cleanup .csproj / assembly properties
    Support more platforms
    Use new project format
    Convert project to new .NET build
    add .NET 5.0 (.NET Core 5)
    Use expression to indicate MIT license
@henrygab
Copy link
Author

@jaquadro -- Are you doing any further work on this?

@redwyre redwyre force-pushed the 2.x branch 2 times, most recently from b3a036d to 7c62ed9 Compare December 28, 2024 13:58
@redwyre
Copy link
Contributor

redwyre commented Dec 29, 2024

I've made changes to the projects and added sourcelink, as well as uploading a symbol package to nuget

@redwyre redwyre closed this Dec 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants